Page({
    data: {
        email: '',
        password: ''
    },
    // 邮箱输入事件处理函数
    onEmailInput: function (e) {
        this.setData({
            email: e.detail.value
        });
    },
    // 密码输入事件处理函数
    onPasswordInput: function (e) {
        this.setData({
            password: e.detail.value
        });
    },
    // 登录按钮点击事件处理函数
    onLoginClick: function () {
        // 简单的表单验证
        const { email, password } = this.data;
        if (!email || !password) {
            wx.showToast({
                title: '邮箱和密码均为必填项',
                icon: 'none'
            });
            return;
        }

        const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
        if (!emailRegex.test(email)) {
            wx.showToast({
                title: '请输入有效的邮箱地址',
                icon: 'none'
            });
            return;
        }

        // 构造 application/x-www-form-urlencoded 格式的数据
        const formData = `email=${encodeURIComponent(email)}&password=${encodeURIComponent(password)}`;

        wx.request({
            url: 'http://localhost:3000/api/users/login',
            method: 'POST',
            header: {
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            data: formData,
            success: (res) => {
                console.log('请求成功', res.data);

                if (res.data.success) {
                    // 登录成功，保存token和用户信息
                    wx.setStorageSync('token', res.data.data.token);
                    wx.setStorageSync('userInfo', res.data.data.user);

                    // 显示成功提示
                    wx.showToast({
                        title: '登录成功',
                        icon: 'success',
                        duration: 1500,
                        success: () => {
                            // 提示显示完成后跳转到用户页面
                            setTimeout(() => {
                                wx.switchTab({
                                    url: '/pages/user/user'
                                });
                            }, 1500);
                        }
                    });
                } else {
                    // 登录失败，显示错误信息
                    wx.showToast({
                        title: res.data.message || '登录失败',
                        icon: 'none'
                    });
                }
            },
            fail: function (err) {
                console.error('请求失败', err);
                wx.showToast({
                    title: '网络请求失败',
                    icon: 'none'
                });
            }
        });
    },
    // 跳转到注册页面
    goToRegister: function () {
        wx.navigateTo({
            url: '/pages/register/register'
        });
    }
})